package com.gzy.cs5.Repository;

import com.gzy.cs5.exception.BusinessException;
import com.gzy.cs5.lang.OrderStatus;
import com.gzy.cs5.model.Item;
import com.gzy.cs5.model.Order;

import java.util.List;

/**
 * 订单存储接口（模拟数据库）
 */
public interface OrderRepository {
    void save(Order order); // 保存订单
    Order findById(String orderId) throws BusinessException; // 根据订单编号查找订单
    void updateStatus(String orderId, OrderStatus status) throws BusinessException; // 更新订单状态
    List<Order> findAll(); // 获取所有订单
    Item findItemById(String itemId); // 根据商品ID查找商品
    void updateItem(Item item); // 更新商品

    // 添加 saveItem 方法声明
    void saveItem(Item item);

//    void updateOrder(Order order) throws BusinessException;
void updateOrder(Order newOrder) throws BusinessException;
}
